
    //类与对象的学习
    //Java是一门纯面向对象的语言(Object Oriented Program，简称OOP)，在面向对象的世界里，一切皆为对象。面
    //向对象是解决问题的一种思想，主要依靠对象之间的交互完成一件事情。用面向对象的思想来涉及程序，更符合人
    //们对事物的认知，对于大型程序的设计、扩展以及维护都非常友好。
    //说白了在对象的世界里，一切都是对象，对象也就是指他人
    //就是我们用面向过程的时候，什么都需要自己亲力亲为
    //然而在面向对象的世界里，我们可以把我们的指令交给他人（即对象），我们不去关心过程，只有去关心结果，最后那个对象把结果交给我

    //洗衣服的时候，只有四个对象：人，衣服，洗衣粉，洗衣机
    //我们只关心结果就可以了，不去关心洗衣机是如何去工作的
    //注意：面向过程和面向对象并不是一门语言，而是解决问题的方法，没有那个好坏之分，都有其专门的应用场景。

    //如果我们对洗衣机（对象）进行简单的描述（参数啊等之类的），
    //那么就是对一个对象进行抽象（即对一个复杂的事物的重新认知）


    //面向对象注重整体的，对象就是模拟正常的世界的实体来进行工作，灵活；
    //但是面向过程需要注意每个环节的逻辑，需要明白它的每个步骤。

    //对象的产生需要依赖于类！！！
    //类就是类型：我们需要自己定义在这个类

    //类是用来对一个实体（对象）来进行描述的模板

    // 创建类的具体方式
//    class ClassName {//类名一定要大驼峰的方式
//       field;  // 字段(属性) 或者 成员变量
//        method; // 行为 或者 成员方法
//    }
    // class为定义类的关键字，ClassName为类的名字，{}中为类的主体。
    // 比如：洗衣机，它是一个品牌，在Java中可以将其看成是一个类别。
    // 属性：产品品牌，型号，产品重量，外观尺寸，颜色...
    // 功能：洗衣，烘干、定时....

    //比如我们定义一个洗衣机类
class WashMachine {//类名一定要大驼峰的方式
        //类具有属性，就可以简单的理解为洗衣机的参数


        //（成员）属性（有的书上会表示成员属性或者字段）
        // 特点 ：是定义在类的里边，方法的外边
        public String brand;// 品牌
        public String type; // 型号
        public double weight; // 重量
        public double length; // 长
        public double width; // 宽
        public double height; // 高
        public String color; // 颜色

    /*public void func(){
        int a = 10; //方法的外面
    }*/

        //行为（也叫做成员方法）
        public void washColthes() {//洗衣服
            System.out.println("洗衣功能");
        }

        public void dryColthes() {//脱水
            System.out.println("脱水功能");
        }

        public void setTime() { //定时
            System.out.println("定时功能");
        }
}

class Dog{
    //属性
    public String name;
    public double weight;
    public String color;
    public double length;

    //行为
    public void eat(){
        System.out.println("吃饭");
    }
    public void bark(){
        System.out.println("");
    }
}
    //注意事项:
    //类名注意采用大驼峰定义
    //成员前写法统一为public，后面会详细解释
    //此处写的方法不带 static 关键字. 后面会详细解释

//练习：定义一个学生类
class Student{
    //属性
    public String name;
    public String gender;
    public int age;
    public double score;

    //行为
    public void toClass(){//来上课
        System.out.println("按时上课，不要迟到，如果请假，及时去补");
    }
    public void doHomework(){
        System.out.println("教务系统，完成作业，一旦拖沓，神仙难救");
    }
    public void exam(){
        System.out.println("考试学情，了解学情，人人必考，暴露问题");
    }

    public static void main(String[] args) {
        System.out.println("加油！");
    }
}
public class Why {
    Student student = new Student();
    public static void main(String[] args) {
        System.out.println("争取能获得 super offer");
    }
}
//注意事项：
//1. 一般一个文件当中只定义一个类
//2. main方法所在的类一般要使用public修饰(注意：Eclipse默认会在public修饰的类中找main方法)
//3. public修饰的类必须要和文件名相同
//4. 不要轻易去修改public修饰的类的名称，如果要修改，通过开发工具修改(给同学演示)。
//5. 要想去修改一般也是在一个java文件有一个类的情况去修改